//
// Created by Administrator on 2022/1/8.
//
#include <stdio.h>

#define ARRAY_LENGTH 5

int main(void) {
    int array[ARRAY_LENGTH] = {[1]=2};
    printf("%p\n", &array);
    printf("%d\n", array[0]);
    //下面两个表达式的结果一致，可以得出来：类型为指针：array[index]=array+index
    printf("%p\n", &array[1]);
    printf("%d\n", *(array + 1));
    printf("%d\n", array[1]);

    //error: variable-sized object may not be initialized
    //错误：可变大小的对象可能未初始化
    //只有C99支持该特性，VLA(变长数组)：数组的长度可以用变量声明的数组
    int value = 4;
    //只读变量也不行
//    const int value = 4;
    int array2[value] = {[0]=1};

    return 0;
}